Method and apparatuses for backgaging and sensor-based control of bending operations

ABSTRACT

Several methods and subsystems are provided for aligning a workpiece as it is being loaded into a die space of a bending apparatus, and for performing sensor-based control of a robot as it moves a workpiece from one location to another within a bending apparatus environment. A backgaging mechanism is provided with finger gaging mechanisms having force sensors for sensing forces in directions perpendicular to and parallel to a die. In addition, a robot gripper sensor is provided for sensing either or both of shear forces and normal forces created by movement of a workpiece being held by the gripper. Several sensor-based control modules are disclosed, including a bend-following control module, a speed control module, a module for actively damping vibrations in a workpiece, a module for controlling active compliance/contact between a workpiece and an obstacle, a module for performing a guarded move to intentionally bring a workpiece into contact with an obstacle, and a module for detecting unintentional impacts between a workpiece and an obstacle. Several droop sensing methods and systems are also provided, including methods for performing droop sensing and compensation with the use of a vision-based droop sensor, a compound break-beam droop sensor, and a single break-beam droop sensor. In addition, an angle sensor is provided, along with a springback control method utilizing the disclosed angle sensor.

RELATED APPLICATION DATA

This application is a divisional of U.S. patent application Ser. No.08/980,301, filed on Nov. 28, 1997 now U.S. Pat. No. 5,987,958, which isa continuation of U.S. patent application Ser. No. 08/385,829, filed onFeb. 9, 1995, which is now U.S. Pat. No. 5,761,940, issued on Jun. 9,1998 which is a continuation of U.S. patent application Ser. No.08/338,153, filed on Nov. 9, 1994, abandoned, the entire disclosure ofwhich is expressly incorporated by reference herein. The presentdisclosure is related to the disclosures provided in the followingcommonly assigned U.S. Applications: “Method for Planning/ControllingRobot Motion”, U.S. patent application Ser. No. 08/338,115, filed onNov. 9, 1994; “Intelligent System for Generating and Executing a SheetMetal Bending Plan”, U.S. patent application Ser. No. 08/338,113, filedon Nov. 9, 1994; and “Fingerpad Force Sensing System”, U.S. patentapplication Ser. No. 08/338,095, filed on Nov. 9, 1994; and thedisclosures of all of these applications are expressly incorporated byreference herein their entireties.

BACKGROUND OF THE INVENTION COPYRIGHT NOTICE

A portion of the disclosure of this patent document contains materialwhich is subject to copyright protection. The copyright owner has noobjection to the facsimile reproduction by anyone of the patentdisclosure, as it appears in the Patent and Trademark Office patentfiles or records, but otherwise reserves all copyright rightswhatsoever.

1. Field of the Invention

The present invention relates to methods and apparatuses for backgagingduring the operation of a press brake of a sheet metal bendingworkstation, and to sensor-based control of robotic manipulations ofsheet metal workpieces and of operation of the press brake. The presentinvention further relates to various systems and sub-components forassisting in the operation of the backgaging and sensor-based controlmethods.

2. Discussion of Background and Material Information

FIGS. 1-3 illustrate, in a simplified view, an example conventionalbending workstation 10 for bending sheet metal parts from a manuallycreated program downloaded to various control devices provided withinthe workstation. The illustrated bending workstation is a BM100 Amadaworkstation.

(a) The Hardware and Its Operation

FIG. 1 shows an overall simplified view of bending workstation 10. FIG.2 shows a partial view of a press brake 29, positioned to perform a bendon a workpiece 16. The elements shown in FIG. 2 include a robot arm 12having a robot arm gripper 14 grasping a workpiece 16, a punch 18 beingheld by a punch holder 20, and a die 19 which is placed on a die rail22. A backgage mechanism 24 is illustrated to the left of punch 18 anddie 19.

As shown in FIG. 1, bending workstation 10 includes four majormechanical components: a press brake 29 for bending workpiece 16; a fivedegree-of-freedom robotic manipulator (robot arm) 12 for handling andpositioning workpiece 16 within press brake 29; a materialloader/unloader (L/UL) 30 for loading and positioning a blank workpieceat a location for robot arm 12 to grab, and for unloading finishedworkpieces; and a repositioning gripper 32 for holding workpiece 16while robot arm 12 changes its grasp.

Press brake 29 includes several components as illustrated in FIGS. 1-3.Viewing FIG. 3, press brake 29 includes at least one die 19 which isplaced on a die rail 22, and at least one corresponding punch tool 18which is held by a punch tool holder 20. Press brake 29 further includesa backgage mechanism 24.

As shown in FIG. 2, robot arm 12 includes a robot arm gripper 14 whichis used to grasp workpiece 16. As shown in FIG. 1, materialloader/unloader 30 includes several suction cups 31 which create anupwardly directed suction force for lifting a sheet metal workpiece 16,thereby allowing L/UL 30 to pass workpiece 16 to gripper 14 of robot 12,and to subsequently retrieve workpiece 16 from gripper 14 and unload thefinished workpiece.

In operation, loader/unloader 30 will lift a blank workpiece 16 from areceptacle (not shown), and will raise and move workpiece 16 to aposition to be grabbed by gripper 14 of robot 12. Robot 12 thenmaneuvers itself to a position corresponding to a particular bendingstage located within bending workstation 10. Referring to each of FIGS.1 and 3, stage 1 comprises the stage at the leftmost portion of pressbrake 29, and stage 2 is located to the right of stage 1 along die rail22.

If the first bend is to be made at stage 1, robot 12 will move workpiece16 to stage 1, and as shown in FIG. 2, will maneuver workpiece 16 withinthe die space of press brake 29, i.e., at a location between punch tool18 and die 19), until it reaches and touches a backstop portion ofbackgage 24. Then, a bend operation is performed on workpiece 16 atstage 1. In performing the bend operation, die rail 22 moves upward(along a D axis), as indicated by the directional arrow A in FIG. 2. Aspunch tool 18 and die 19 simultaneously contact workpiece 16, so thatworkpiece 16 assumes a relatively stable position within press brake 29,gripper 14 will release its grasp on workpiece 16, and robot 12 willmove gripper 14 away from workpiece 16. Press brake 29 will thencomplete its bending of workpiece 16, by completing the upward movementof die 19 until the proper bend has been formed.

Once die 19 is engaged against punch tool 18, holding workpiece 16 inits bent state, before disengaging die 19 by lowering press brake 29,robot arm 12 will reposition its robot arm gripper 14 to hold workpiece16. Once gripper 14 is holding workpiece 16, die 19 will be disengagedby releasing press brake 29. Robot 12 then maneuvers and repositionsworkpiece 16 in order to perform the next bend in the particular bendsequence that has been programmed for workpiece 16. The next bend withinthe bend sequence may be performed either at the same stage, or at adifferent stage, such as stage 2, depending upon the type of bends to beperformed, and the tooling provided within press brake 29.

Depending upon the next bend to be performed, and the configuration ofworkpiece 16, the gripping position of gripper 14 may need to berepositioned. Repositioning gripper 32, shown in FIG. 1, is provided forthis purpose. Before performing the next bend, for which repositioningof robot gripper 14 is needed, workpiece 16 will be moved by robot 12 torepositioning gripper 32. Repositioning gripper 32 will then graspworkpiece 16 so that robot gripper 14 can regrip workpiece 16 at alocation appropriate for the next bend or sequence of bends.

(b) The Control System

The bending workstation 10 illustrated in FIG. 1 is controlled byseveral control devices which are housed separately, including anMM20-CAPS interface 40, a press brake controller 42, a robot controller44, and a load/unload unit controller 46. Press brake controller 42comprises an NC9R press brake controller, and robot controller 44comprises a 25B robot controller, which are each supplied by Amada. Eachof press brake controller 42 and robot controller 44 have their own CPUand programming environments. Load/unload unit controller 46 comprises astand alone Programmable Logic Controller (PLC), and is wired torespective consoles provided for press brake controller 42 and robotcontroller 44.

Each of controllers 42, 44, and 46 has a different style bus,architecture, and manufacturer. They are coordinated primarily byparallel I/O signals. Serial interfaces are provided for transportingbending and robot programs to the controllers, each of which isprogrammed in a different manner. For example, logic diagrams are usedto program the PLC of the load/unload controller 46, and RML is used toprogram robot controller 44.

(c) The Design/Manufacture Process

The overall design/manufacture process for bending sheet metal includesseveral steps. First, a part to be produced is typically designed usingan appropriate CAD system. Then, a plan is generated which defines thetooling to be used and a sequence of bends to be performed. Once theneeded tooling is determined, an operator will begin to set up thebending workstation. After the workstation is set up, the plan isexecuted, i.e., a workpiece is loaded and operation of the bendingworkstation is controlled to execute the complete sequence of bends on ablank sheet metal workpiece. The results of the initial run(s) of thebending workstation are then fed back to the design step, whereappropriate modifications may be made in the design of the part in viewof the actual operation of the system.

In the planning step, a plan is developed for bending workstation 10 inorder to configure the system to perform a sequence of bendingoperations. Needed hardware must be selected, including appropriatedies, punch tools, grippers, and so on. In addition, the bendingsequence must be determined, which includes the ordering and selectionof bends to be performed by bending workstation 10. In selecting thehardware, and in determining the bending sequence, along with otherparameters, software will be generated to operate bending workstation10, so that bending workstation 10 can automatically perform thecomplete bending process.

FIG. 4 illustrates the structure of backgaging mechanism 24 of theconventional BM100 Amada bending workstation illustrated in FIG. 1. Asillustrated in FIG. 4, backgage mechanism 24 comprises at least twolinear potentiometers 60. for performing backgaging operations. In orderto perform a backgaging operation, a robot 12 (see FIG. 1) adjusts its Adimension so that workpiece 16 is horizontal, and moves the workpiece ina positive Y direction towards backgage mechanism 24, until contact ismade with at least one of linear potentiometers 60. Movement of robot 12(and robot gripper 14) is then controlled to balance out each of the twocontacted linear potentiometers 60, and to adjust the overall Y positionas indicated by the output signals produced by linear potentiometers 60.In performing such an adjustment, the robot may move workpiece 16 from afirst position I to a second position II, as shown in FIG. 4. Whenworkpiece 16 is moved from location I to location II, by rotating robotgripper 14 in a −B direction, the position of workpiece 16 in the Xdirection will be significantly changed, by an amount ΔX. For everyadjustment in the position of the workpiece that is made, it is likelythat the X position of workpiece 16 will be changed. This requires anadditional movement by robot 12 to correct the X position of workpiece16, and thus causes delays in the backgaging process. An additionallimitation in the backgaging mechanism illustrated in FIG. 4 is that themechanism is not designed to allow for sidegaging, i.e., gaging in the Xdirection of workpiece 16.

SUMMARY OF THE INVENTION

In view of the above, the present invention, through one or more of itsvarious aspects and/or embodiments, is thus presented to bring about oneor more objects and advantages such as noted below.

It is an object of the present invention to provide a backgagingmechanism which will allow a workpiece to be aligned as it is broughtinto a die space of a bending apparatus without repeatedly adjusting theposition of the workpiece. Thus, it is an object of the presentinvention to provide a backgaging mechanism which will allow positioningand alignment of a workpiece in a die space in a more efficient manner.

It is further object of the present invention to provide an improvedbackgaging mechanism having force sensing finger gaging mechanisms whichwill facilitate the performance of both backgaging and sidegaging of aworkpiece as it is loaded into a die space of a bending apparatus. It isyet a further object of the present invention to provide severalimproved sensor-based motion control mechanisms for facilitating theaccurate control of movement of a robot manipulator and a press brake(and other components) in a bending workstation environment.

The present invention, therefore, is directed to, among other things, anapparatus for aligning a malleable sheet workpiece with respect to a dieof a bending apparatus before performing a bend operation on theworkpiece. A finger tip is provided for gaging the position of theworkpiece with respect to the die, and a mechanism is provided formoving the workpiece toward the finger tip until contact is made betweenan edge of the workpiece and the finger tip. An adjustment mechanism isprovided for adjusting the orientation of the workpiece by rotating theworkpiece about the finger tip.

In accordance with an aspect of the present invention, an apparatus isprovided for aligning a malleable sheet workpiece with respect to a dieof a bending apparatus when loading the workpiece into a die space,before performing a bending operation on the workpiece. The apparatusincludes a gaging finger having a elongated member with a longitudinalaxis parallel to or orthogonal to the die. The gaging finger comprises acontact portion that moves with the elongated member, and a mechanismfor measuring forces of contact between the workpiece and the contactportion. The forces of contact which are measured may include one orboth of a force parallel to the die and a force orthogonal to the die.

In accordance with a further aspect of the present invention, a bendingapparatus is provided for performing a bend operation on a malleablesheet workpiece. The bending apparatus may include a die and a toolpunch, where the die and tool punch form a die space. A loadingmechanism is provided for loading the workpiece into the die space, theloading mechanism comprising substantially rigid gaging fingers, a robothaving a gripper, and a control mechanism for controlling the robot tobring the workpiece into contact with the substantially rigid fingers.The gripper holds the workpiece while the robot brings the workpieceinto contact with the rigid gaging fingers. The gripper comprisescompliant pads and sensing means for sensing when the workpiece contactsthe substantially rigid gaging fingers.

In accordance with yet a further aspect of the present invention abending apparatus is provided for performing a bend operation on amalleable sheet workpiece. The bending apparatus includes a die and atool punch, which together form a die space. A gaging mechanism isprovided which includes at least one gaging finger for gaging a positionof the workpiece along a first direction orthogonal to the die and alonga second direction parallel to the die. A robot is provided in thebending apparatus, which has a gripper for holding the workpiece. Inaddition, a mechanism is provided for controlling the robot to bring theworkpiece into contact with the at least one gaging finger. The robotgripper may include a gripper force sensor for sensing an amount offorce between the workpiece and the robot gripper, and the gaging fingermay comprise a finger force sensor for detecting an amount of forcebetween the at least one gaging finger and the workpiece contacting theat least one gaging finger.

The gripper force sensor may comprise means for sensing a shear forceacting on an inner surface of the robot gripper due to movement of theworkpiece within the gripper, and the finger force sensor may comprisemeans for sensing both a force in a direction perpendicular to the dieand a force in a direction parallel to the die.

In accordance with a further aspect of the present invention, anapparatus is provided for executing a bend on a malleable sheetworkpiece with bend following. The apparatus includes a bendingapparatus which includes a die, a tool punch, and a robot gripper forholding the workpiece. In this regard, a reading mechanism may beprovided for reading a position value indicative of the relativemovement of the die with respect to the tool punch. A calculatingmechanism may be provided for calculating the location of the gripper asit holds onto the workpiece as a function of the position value read bythe reading mechanism. A speed controller may be provided for limitingthe speed of the relative movement of the die with respect to the toolpunch so that the calculated location does not change too rapidly. Theapparatus may be further provided with means for detecting a forcebetween the workpiece and the robot gripper during execution of thebend, means for modifying the location calculated by the calculatingmechanism based upon the detected force, and a robot controller forcontrolling movement of the robot to correspond to the calculatedlocation. In addition, a determining mechanism may be provided fordetermining if a final bend angle has been reached, signifyingcompletion of the bend.

In accordance with a further aspect of the present invention, anapparatus may be provided for controlling the rate of change of thevelocity of a robot gripper holding a workpiece. In this regard, amonitoring mechanism may be provided for monitoring a force between theworkpiece and the robot gripper, and a determining mechanism may beprovided for determining if the monitored force is greater than or equala threshold value. A decreasing device may be provided for decreasingthe rate of change of the velocity of the workpiece by slowing theacceleration of the robot gripper if the monitored force is determinedto be greater than or equal to the threshold value.

In accordance with a further aspect of the present invention, anapparatus is provided for actively damping vibration of a workpiecebeing held by a robot gripper during movement of the workpiece by arobot. A part geometry parameter reading mechanism is provided forreading the geometry parameters of the workpiece being held by the robotgripper. A force reading mechanism is provided for reading forcesbetween the workpiece and the robot gripper, and a frequency determineris provided for determining an approximate frequency of vibration of theworkpiece based upon the force readings. A robot movement controller isthen provided for controlling the robot to move the robot gripper in adirection opposite to the force readings with the frequency determinedby the frequency determiner.

In accordance with a further aspect of the present invention, anapparatus is provided for controlling a robot having a robot gripperholding a workpiece, so that the workpiece is moved while maintainingcontact between the workpiece and a desired object. A robot controllermay be provided to control movement of the robot so that the workpiecemoves in a desired direction, and a force between the workpiece and therobot gripper is monitored. Mechanisms are provided in order todetermine if the monitored force is within a certain range of a desiredcontact force between the workpiece and the desired object, and foradjusting the direction of movement of the workpiece to either increaseor decrease the contact force. This adjustment is made in order to bringthe monitored force within the certain range of the desired contactforce.

In accordance with a further aspect to the present invention, anapparatus is provided for controlling movement of a workpiece held by arobot gripper toward an obstacle until the workpiece contacts theobstacle. Mechanisms are provided for controlling movement of theworkpiece by a predetermined increment toward the obstacle, and formonitoring an amount of force between the workpiece and the robotgripper. In addition, mechanisms are provided for determining if themonitored force is greater than or equal to a threshold value, and forrepeating movement of the workpiece toward the obstacle until it isdetermined that the monitored force is greater than or equal to thethreshold value.

In accordance with yet a further aspect of the present invention, anapparatus may be provided for controlling movement of a workpiece heldby a robot gripper, and for detecting an unplanned impact between aworkpiece and an obstacle. In this regard, mechanisms are provided formonitoring an amount of force between the workpiece and the robotgripper, and for determining if the monitored force is greater than orequal to an impact threshold value. A mechanism then stops movement ofthe robot when the monitored force is determined to be greater than orequal to the impact threshold value. The determining mechanism mayinclude a mechanism for determining if the monitored force is greaterthan or equal to a minor impact threshold value and for determining ifthe monitored force is greater than or equal to a major impact thresholdvalue. An additional mechanism is provided for modifying the movement ofthe robot in order to bring the workpiece away from the obstacle whenthe monitored force is determined to be greater than or equal to theminor impact threshold value but less than the major impact thresholdvalue.

In accordance with yet a further object of the present invention, asystem is provided for loading a workpiece into a die space of a bendingapparatus. The system includes mechanisms for measuring, with ameasuring mechanism, an amount of droop offset of a leading edge of theworkpiece before the workpiece is loaded into the die space, moving theworkpiece in an upward direction by an amount equal to the measuredoffset, and loading the workpiece into the die space. The measuringmechanism may comprise a vision-based droop sensor, that may beback-lit. In addition or in the alternative, the measuring mechanism maycomprise a mechanism for sensing when each of a plurality of light beamshave been intersected by the workpiece as the workpiece is moved towardthe die space. In addition, or in the alternative, the measuringmechanism may comprise a single-beam break detecting mechanism fordetecting when a single light beam has been broken by movement of theworkpiece toward the die space.

In accordance with yet a further aspect of the present invention, anangle sensor is provided for detecting an angle of a flange portion of aworkpiece as the flange portion is being bent by a bending apparatus.The angle sensor includes a member having a reflective surface, a holderfor holding the member with the reflective surface against the flangeportion of the workpiece, and a light emitter for emitting a light beamonto the reflective surface. A light detector is provided for detectinga position of the light beam as the light beam is reflected by thereflective surface. The detected position is indicative of the angle ofthe flange portion of the workpiece.

In accordance with yet a further aspect of the present invention, asystem may be provided for controlling springback of a flange portion ofa workpiece as a bend operation is performed by a bending apparatusutilizing a die and a tool punch. The springback control system mayinclude mechanisms for measuring an angle of the flange portion of theworkpiece as a bend is being performed, and for calculating a predictedamount of springback expected to occur in the flange portion aftercompletion of the bend operation.

The above-listed and other objects, features, and advantages of thepresent invention will be more fully set forth hereinafter.

BRIEF DESCRIPTION OF THE DRAWINGS

The present invention is further described in the detailed descriptionwhich follows, by reference to a plurality of drawings by way ofnon-limiting examples of illustrative embodiments of the presentinvention, in which like reference numerals represent similar partsthroughout the several views of the drawings, and wherein:

FIG. 1 illustrates a prior art Amada BM100 bending work station;

FIG. 2 illustrates a side view of a die space;

FIG. 3 illustrates a front view of a die space;

FIG. 4 illustrates a prior art backgaging mechanism with a workpiecebeing aligned;

FIG. 5 illustrates a backgaging mechanism of an embodiment of thepresent invention including both left and right finger gagingmechanisms;

FIG. 6 illustrates a left finger gaging mechanism performing X-gaging;

FIG. 7 illustrates a left finger gaging mechanism performing X-gaging;

FIGS. 8A and 8B illustrate alternate force sensing circuits for use withthe backgaging mechanism illustrated in FIG. 5;

FIG. 9 is a flow chart of a bending process preformed by a bending workstation such as that illustrated in FIG. 1;

FIG. 10 is a flow chart of the main steps of an alignment process;

FIG. 11 is a flow chart of a first embodiment backgaging process;

FIG. 12 is a flow chart of a second embodiment backgaging process;

FIG. 13 is a flow chart of a first embodiment sidegaging process;

FIG. 14 is a flow chart of a second embodiment sidegaging process;

FIG. 15 comprises an expanded view of a disassembled compliant robotgripper sensor;

FIG. 16 is a flow chart of a process of performing a bend with bendfollowing;

FIG. 17 is a flow chart of the operation of a speed control module;

FIG. 18 is a flow chart representing the operation of a first embodimentmodule for performing active damping of part vibrations;

FIG. 19 is a flow chart representing the operation of a secondembodiment module for performing active damping of part vibrations;

FIGS. 20A-20B comprise a flow chart of the operation of a firstembodiment contact control module;

FIG. 21 is a flow chart of the operation of a second embodiment contactcontrol module;

FIG. 22 is a flow chart representing the operation of a guarded movemodule;

FIGS. 23A-23B together comprise a flow chart which represents theoperation of an impact detection module;

FIGS. 24A-24B illustrate a back-lit vision-based droop sensor;

FIG. 25 is a flow chart of a back-lit vision-based droop sensingprocess;

FIG. 26 is flow chart of a droop sensing process without back lighting;

FIG. 27A illustrates a compound break beam droop sensor with a workpiecenot yet approaching the die space;

FIG. 27B illustrates a compound break beam droop sensor with a workpieceapproaching the die space and hitting a scanned beam;

FIG. 27C illustrates a compound break beam droop sensor with a workpiecestopped in the Y direction and lowered until it has hit a fixedtraversing beam;

FIG. 28 is a flow chart of a droop sensing process performed with acompound break beam;

FIGS. 29A-29B illustrate a single-beam droop sensor in relation to arobot carrying a workpiece;

FIG. 30 is a flow chart representing a droop sensing process beingperformed with a single-beam droop sensor as illustrated in FIGS. 29Aand 29B;

FIG. 31 is a side view of a die and a mirror holding mechanism for anangle sensor;

FIG. 32 illustrates a side view of a die and a beam emitter/detectorunit;

FIG. 33 illustrates a side view of a beam emitter/detector unit with asupport structure;

FIG. 34 is a top view of a beam emitter/detector unit with a supportstructure; and

FIG. 35 is a flow chart of the steps performed by a springback controlprocess.

DETAILED DESCRIPTION OF THE ILLUSTRATIVE EMBODIMENTS

1. Backgaging

Referring now to the drawings in greater detail, FIG. 5 shows anillustrative embodiment of a backgaging mechanism that may be providedin the present invention, including both left and right finger gagingmechanisms. A workpiece 16 is being front-loaded into a die space, overa die 19. The workpiece 16 is held by a robot gripper 14, and is broughtinto contact with each of fingers 106 of a left finger gaging mechanism100 and a right finger gaging mechanism 102.

Each of the illustrated finger gaging mechanisms 100, 102 includes afinger 106, which may be formed with hardened steel, and L-shaped arm108, which may be formed with aluminum. Each L-shaped arm 108 ismoveable about a pivot point 110 and is rotatably mounted (at the pivotpoint) on a finger gaging support base 111.

Each of the finger gaging mechanisms 100, 102 further includes a pair offorce sensitive resistors 104, which are used as sensing elements. Eachforce sensitive resistor 104 is maintained at a constant force between aplastic push rod 112 and a flat aluminum surface. The force sensitiveresistors 104 a and 104 c, which are located closer to die 19, are eachpositioned between a plastic push rod 112 and a flat vertical surface ofL-shaped arm 108. The remaining force sensitive resistors 104 b and 104d are each positioned between a plastic push rod 112 and a flat verticalsurface of a bracing member 113 which is fixed to finger gaging supportbase 111. The force sensitive resistors 104 are each maintained at aconstant force against their respective abutting surfaces by the actingforce of a spring pre-load adjustment mechanism 114 which each act on apush rod 112 located on an inner side of an L-shaped arm 108.

Each spring pre-load adjustment mechanism 114 may be provided with athreaded adjustment screw 118, which can be utilized to adjust thetension of a spring 119 provided within a spring chamber 120. Spring 119is brought into contact with a translating member 121 which in turn isin direct contact with a push rod 112.

Each of L-shaped arms 108 is configured to rotate about a pivot point110. Accordingly, they are each moveable in the direction of (oropposite to) the arrows indicated in FIG. 5. Because of the use of theL-shaped arms 108, force sensitive resistors 104 can sense forces actingon fingers 106 in both a direction perpendicular to die 19, and parallelto die 19. The forces acting upon fingers 106, by workpiece 16approaching the fingers in the manner illustrated in FIG. 5, are normalto the die 19.

A force is detected by each of the force sensitive resistors 104 due toan increase in pressure causing a decrease in resistance in each of thesensors. Each of finger gaging mechanisms 100, 102 is provided with apair of force sensitive resistors 104 in order to measure forceutilizing a differential scheme, in order to minimize sensitivity topre-load forces, FSR creep, and FSR hysteresis.

A plurality of various members and/or surfaces are indicated on each ofthe finger gaging support bases 111 of the respective left and rightfinger gaging mechanisms 100 and 102. The most important members thatare placed on finger gaging support base 111 include L-shaped arms 108,and bracing members 113. Each of these members may be aluminum members.The remaining members/surfaces on the finger gaging support base 111,shown in FIG. 5, do not have to be in the precise shape and locationillustrated in FIG. 5. Accordingly, such members are not described indetail herein. It is important, as will be appreciated by the artisan,that each of push rods 112 be placed in a relatively stable position sothat they each move in a direction normal to the vertical surfaces withwhich they come into contact. In addition, an appropriate supportmechanism should be provided so that each spring pre-load adjustmentmechanism 114 is appropriately fixed with respect to finger gagingsupport base 111, and can move freely in a direction perpendicular todie 19, toward push rods 112, and can be adjusted by rotation ofadjustment screws 118.

FIG. 6 illustrates a single finger gaging mechanism 100, which isidentical in configuration to the left finger gaging mechanism 100illustrated in FIG. 5. The illustrated finger gaging mechanism 100 isbeing utilized for X-gaging (i.e., side-gaging) when side-loading aworkpiece 16 into a die space. When workpiece 16 comes into contact withgaging finger 106, in the manner shown in FIG. 6, L-shaped arm 108 movesin the direction of the arrow shown in FIG. 6. The resultant forcemeasured is equal to the force value produced by sensor 104 a minus theforce value produced by sensor 104 b. It is preferred that thetolerances of the relative positions of the L-shaped arms 108 and pushrods 112 be tight, so that gaging fingers 106 will only move by a smallamount in a direction orthogonal to die 19 or parallel to die 19. Inthis regard, the finger gaging mechanism 100 may be configured so thatthere is a maximum finger travel of approximately of 0.003 inches adirection perpendicular to die 19.

Each of pivot points 110 of L-shaped arms 108 may be formed with a wellknown-bearing mechanism, or by means of a bolt, driven through acylindrical opening within each of arms 108 and fixed to finger gagingsupport base 111. The particular manner in which the pivot mechanism isimplemented is not critical to the invention, except that the pivotmechanism should not produce friction which might affect the resultantforce readings given by the differential force sensitive resistors ineach of the finger gaging mechanisms 100, 102.

FIG. 7 illustrates finger gaging mechanism 100, with workpiece 16 beingloaded into the die space of die 19 from a side opposite to that shownin FIG. 6. FIGS. 5-7 illustrate the versatility of the illustratedfinger gaging mechanism in that it can accommodate force measurements ineither direction parallel to die 19, and/or also in a directionperpendicular to die 19 (in the manner illustrated in FIG. 5). Whenworkpiece 16 comes into contact with gaging finger 106 in the mannershown in FIG. 6, L-shaped arm 108 moves in the direction shown by thearrow. The resultant force which is measured is equal to the force ofsensor 104 a minus the force determined by sensor 104 b.

Each of the force sensitive resistors may comprise an FSR, with modelnumber 302 (½″ circle on ULTEM material) by Interlink Electronics, 546Flynn Road, Camarillo, Calif. 93012 (805-484-8855).

FIG. 8A illustrates a force sensing circuit which may be utilized inconnection with each of the left and right finger gaging mechanisms 100,102 illustrated in FIG. 5. The force-sensing circuit illustrated in FIG.8A corresponds to the left finger gaging mechanism 100, and thusincludes force sensitive resistors 104 a and 104 b. Each of forcesensitive resistors 104 a and 104 b is connected between a referencevoltage (1 volt DC) and an inverting input of a respective operationalamplifier (122 a and 122 b). A digital potentiometer 124 a, which may bedigitally controlled by a serial control line 128, is connected betweenthe inverting input of operational amplifier 122 a and the outputterminal of the operational amplifier 122 a. Similarly, a digitalpotentiometer 124 b is connected between the inverting input ofoperational amplifier 122 b and the output of the same. Thenon-inverting input of each of the operational amplifiers is connecteddirectly to ground. The outputs of operational amplifiers 122 a and 122b are connected to an analog-to-digital converter 126. In addition, theoutput of operational amplifier 122 a is connected, via resistor R1, toan inverting input of a third operational amplifier 122 c and the outputof operational amplifier 122 b is connected, via resistor R2, to anon-inverting input of the third operational amplifier 122 c. A resistorR4 is connected between the non-inverting input of third operationalamplifier 122 c and ground. Another Resistor R3 is connected between theinverting input of operational amplifier 122 c and the output of thesame.

Microcontroller 124 reads the no-load voltage output from each forcesensitive resistor (FSR), via the A/D converter, and produces aresulting force value at output terminal V_(o). The microcontrollercenters and balances the two no-load FSR voltages by adjusting the gainof each amplifier 122 a and 122 b with the use of digital potentiometers124 a and 124 b, respectively. Microcontroller 124 may also perform aloaded calibration while one or both of fingers 106 is touching areference point, such as die rail 19.

FIG. 8B illustrates an alternative force sensing circuit which allowsthe automatic adjustment of sensitivity as well as accurate forcereadings. This alternative circuit may be utilized in connection witheach of the left and right finger gaging mechanisms 100, 102 illustratedin FIG. 5. The force-sensing circuit illustrated in FIG. 8B correspondsto the left finger gaging mechanism 100, and thus includes a front forcesensitive resistor (FSR) 104 a and a rear force sensitive resistor (FSR)104 b. The circuit includes an operational amplifier 124 c and twodigitally controlled potentiometers 124 c, 124 d. Rear FSR 104 b isconnected between a reference voltage (e.g., 2.5 volts DC) and aninverting input of operational amplifier 122 c, and front FSR 104 a isconnected between the inverting input and ground.

A first digital potentiometer 124 c, which may be digitally controlled(by a serial control line (not shown)), is connected between theinverting input of operational amplifier 122 c and the output terminalof operational amplifier 122 c. The wiper terminal of potentiometer 124c is connected to one side of the potentiometer to form a variableresistor. A second digital potentiometer 124 d is connected between areference voltage (e.g., 2.5 volts D.C.) and ground. The wiper terminalof potentiometer 124 d is connected to the non-inverting input of theoperational amplifier 122 d to form a voltage divider which provides anadjustable offset voltage.

The two FSR's are connected in series so that they act as a voltagedivider. The operational amplifier 124 c amplifies and shifts thevoltage seen at the node where the two FSR's connect. The gain ofoperational amplifier 124 c may be varied by adjusting the resistancevalue of the first digital potentiometer 124 c, and the offset voltageof operational amplifier 124 c may be varied by adjusting the seconddigital potentiometer 124 d which serves as a voltage divider. The firstand second digital potentiometers may be provided in respective channelsof a two channel digitally-controlled potentiometer, such as a DS1267from Dallas Semiconductor, 4401 S. Beltwood Parkway, Dallas, Tex. 75244.It is noted that the offset voltage connected to the non-inverting inputof operational amplifier 122 d may be alternatively provided by a D/Aconverter, which may allow a finer adjustment of the offset voltage.

By providing this circuit arrangement, two adjustment mechanisms areavailable. The sensitivity of the force sensing circuit may be adjustedby adjusting the first digital potentiometer 124 c; and the zero-forceoutput voltage (present at Vo when there is no force acting on thefinger) may be adjusted by adjusting the offset voltage by means ofsecond digital potentiometer 124 d (or by means of another adjustable DCvoltage source, such as a D/A converter, as noted above).

By providing digitally controllabe adjustment mechanisms in the circuitillustrated in FIG. 8B, the sensitivity and zero force level of theforce sensing circuit may each by adjusted automatically.

FIG. 9 is a flow chart illustrating the general steps of a bendingprocess to be performed by a bending apparatus as illustrated in FIG. 1.In a first step S1, the robot places a part into the die space. In thenext step S2, the part is aligned in the x, y and rotation (orientation)directions. Then, in step S3, the press table is raised until the partreaches its pinch point between the die and the tooling punch. In stepS4, the bend is executed with bend following (i.e., with the gripperfirmly grasping the workpiece as it is being bent by the bendingapparatus). In step S5, the press brake is opened, and in step S6, thebent workpiece is unloaded. The bend operation is then done as indicatedat step S7.

FIG. 10 illustrates a flow chart of the main steps of an alignmentprocess, which includes both sidegaging (in the X direction, which isparallel to the die of the bending apparatus) and backgaging (in the Ydirection, which is perpendicular to the die). The bending processrelating to the alignment of a part starts at step S8, and performssidegaging in step S9. After sidegaging is performed, the part is now inits appropriate location along the X axis. In step S10, backgaging isthen performed, which adjusts the part's position in the Y direction.The alignment process is then done as indicated at step S11. Althoughthe sidegaging step S9 is before the backgaging step S10, it is notimperative that the order of steps S9 and S10 be as illustrated in FIG.10. The backgaging may be performed before or even simultaneously withsidegaging when aligning a part. When performing backgaging step S10,with the use of a double finger gaging mechanism architecture as shownin FIG. 5, the Y position of the part, along with itsorientation/rotation with respect to the die rail, may be simultaneouslydetermined and adjusted.

FIG. 11 illustrates an example process which may be performed inaligning a workpiece in a backgaging direction i.e., in the Y directionwhich is perpendicular to a die rail of a bending apparatus. Thebackgaging process starts at step S12, and in step S13, theforce-sensing backgage fingers are zeroed and balanced. Then, in stepS14, the part is moved toward the backgage (+Y direction). Adetermination is then made in step S15 as to whether the part has comeinto contact with the backgage mechanism, i.e., one or both of thegaging fingers 106 of the mechanism shown in FIG. 5. If the part has notcome in contact with a backgaging finger, the process returns to stepS14, where the part is then again moved in the same direction toward thebackgage mechanism. If the part has come into contact with the backgagemechanism, the process proceeds from step S15 to step S16, whichdetermines which finger (i.e., the left or the right) has beencontacted. If the right finger has been contacted, the process proceedsto step S18 at which point the part will be rotated in the clockwisedirection about the finger tip 107 of the right finger 106, whilemaintaining contact between the part 16 and the right finger tip. Theprocess then returns to step S16, at which point a determination. isthen made as to which finger is contacted. If both fingers are thencontacted, the process proceeds from step S16 to step S19, in which theforces being exerted on each of the left and right fingers 106 arebalanced. At that point, the process for performing backgaging iscomplete as indicated at step S20.

If it is determined in step Sl6 that the left finger is the only fingerwhich has been contacted, then the part will be rotated in acounterclockwise direction about the left finger tip 107, whilemaintaining contact between the part and the finger tip 107 of the leftfinger 106. The process then returns to step S16 after performance ofstep S17. It is noted that in calculating and controlling how the partis rotated about the finger tip, the center of rotation of the part isdetermined to be at a position within the finger tip which correspondsto the center point of the outer radius of the finger tip.

FIG. 12 is a flow chart of a second embodiment backgaging process. Uponstarting of the backgaging process at step S22 the process proceeds tostep S24, where the force-sensing backgage fingers are zeroed andbalanced. Then, in step S26, the backgage is moved toward the part (inthe Y direction). In step S28, a determination is made as to whether orthe not the part has come into contact with the backgage mechanism. Ifnot, the process returns to step S26 where the backgage is again moved.Once the part has come into contact with the backgaging mechanism, theprocess proceeds to step S30. In step S30, a determination is made as towhich finger has been contacted. If both fingers have been contacted,then the forces between the fingers are balanced in step S32, and theprocess is finished at step S34. If, however, either the left or theright finger has been contacted as determined in step S30, and either ofthe steps S36 or step S38 is performed, the process is returned to stepS30 for an additional determination. as to which finger is contacted.The main difference between the backgaging processes illustrated inFIGS. 11 and 12, is that the backgaging process in FIG. 12 is performedby moving the backgage toward the part, in step 26, as opposed to movingthe part toward the backgage in step S14 of the flow chart of FIG. 11.

FIG. 13 illustrates a process for performing sidegaging, in which thebackgage fingers are moved toward the part, and the fingers of both theleft and right finger gaging mechanisms 100, 102 are utilized. Thesidegaging process begins at step S40, and continues to step S42 atwhich point the backgage fingers are positioned to be wider than thepart and then moved toward the part (in the −Y direction). In step S44,the force-sensitive resistors in the backgage fingers are zeroed andbalanced. Each of the left and the right backgage fingers are thensimultaneously moved toward the part in steps S46 and S48. When the leftbackgage finger contacts the part, as determined in step S49, theprocess proceeds to step S50. When the right backgage finger contactsthe part as determined in step S51, the process then proceeds directlyto step S50. In step S50, a determination is made as to whether bothfingers have contacted the part. once this occurs, the process proceedsto step S52, where the edge position information is stored based uponthe position of each of the left and right backgage fingers when theycontact their respective sides of the part. The fingers are then movedclear of the part in step S54, and the robot is moved to its corrected Xposition in step S56. The process is then done as indicated at step S58.

FIG. 14. is an additional flow chart of a second embodiment sidegagingmethod of the present invention. In step S60, the sidegaging process isstarted. In step S62, a chosen backgage finger (which may be either ofthe left or right backgage fingers in the mechanism shown in FIG. 5) ispositioned to be wider than or to the side of the part. Then, in stepS64, the force-sensing backgage finger is zeroed and balanced. In stepS66, the part is then moved toward the backgage finger. A determinationis then made in step S68 as to whether a contact is detected between thebackgage finger and the part. Once a contact is detected, the processproceeds to step S70 where the appropriate edge position of the part isstored. The finger is then moved clear of the part in step S72, and therobot is moved to its corrected X position in step S74. The process isthen done as indicated at step S76.

2. Sensor-Based Control

Several different types of sensor-based control modules may be providedwhich can be called upon by a robot task module provided insequencer/control module for controlling a bending apparatus, such asthe one illustrated in FIG. 1 of the present application. Suchsensor-based control modules may include a bend following module, aspeed control module, a module for actively damping vibration, a modulefor performing compliant-part loading, a module for performing droopsensing and for correcting droop offsets, a module for performing impactdetection (of unplanned collisions), a module performing a guarded move(moving a robot with a workpiece toward an intended object to beimpacted), and a module for performing active compliance/contact control(which includes, e.g., gliding along an obstacle such as die rail, andpressing against various backgage sensors).

FIG. 15 illustrates an expanded view of a disassembled compliant robotgripper sensor, which may be placed on an inner surface of a gripper 14(see e.g., FIG. 1), e.g., in the manner disclosed in a related U.S.application, entitled “Finger Pad Force Sensing System” filed on evendate herewith in the names A. M. Murray, et al., the content of whichhas been expressly incorporated herein by reference. The sensorillustrated in FIG. 15, when assembled, forms a layered sensor pad whichcan sense both shear forces and normal forces acting upon the robotgripper. The layered sensor pad 128 shown in FIG. 15 is assembled andplaced on an inner surface of the robot gripper, e.g., on the lowersurface of the gripper bottom. When mounted on the gripper bottom, baseplate 130 is directly connected to a sensor mounting plate (not shown)which is then connected directly to the gripper bottom.

The layered sensor pad 128 is illustrated to include a base plate 130, arubber pad 132, each of which have a cylindrical hole through a middleportion thereof. The layered sensor pad 128 further includes an assembly136 of FSR copper traces which is placed between the FSR carbon-inksheet 134 and the backside of a copper surface PC board 139. An LED ismounted to a center portion of PC board 139 so that it may fit in themiddle of each of the hole portions of rubber pad 132. At a top portionof the overall sensor pad 128, a cork-rubber pad 140 is attacheddirectly to the backside of copper surface PC board 139.

Each of the various elements forming the sensor pad 128 may be connectedto each other by use of any appropriate attaching mechanism, such as oneor more nut and bolt assemblies, or glue. Normal forces may be sensed bythe resulting sensor pad 128 by sensing the resistance between each ofthe FSR copper traces 136, and shear forces may be sensed by aposition-sensitive device (not shown) which detects the positioning of alight beam being emitted by light emitting diode 138 through theopenings of rubber pad 132, and base plate 130.

FIG. 16 is a flow chart of a process for executing a bend on a malleablesheet workpiece with bend-following. In a first step S80, the bendingprocess is started, and information is input including the die width,the bend stroke (how much the die moves from the pinch point to thefinal bent position), and the sheet thickness. Such information may beprovided by a bend sequence planner in FEL. In the next step S82, therobot gripper position is read in, the robot gripper position beingindicated in terms of world cartesian coordinates. In step S84, theradius and angle of the bend arc (i.e., a line which extends from thegripper position to the bend line) are each computed. In step S86, thebending sequence is initiated. After the bending sequence has beeninitiated in step S86, each of the steps from step S88 to step S104 isrepeated until-the final bend angle has been reached. In step S88, theprocess reads in the D axis position, and in step S90, the processcomputes the angle of the arc as a function of the D axis position valuethat was read in. In step S92, the movement of the D axis in the upperdirection is limited to a certain speed so that the rate of change ofthe angle does not go above a certain threshold value. This allows thespeed of the robot to accommodate the rate at which the part movesduring the bend, and thus allows the robot to hold on to the workpieceduring the bend. In step S94, a first-order digital low pass filter isapplied to the computed, limited angle. This allows an accuratedetermination to be made of the rate of change of the angle, withoutconsideration of high frequency noise components in the measured anglesignal. In step S96, the shear force is read in from the gripper sensor.If a gripper sensor is provided with normal force detection, a normalforce may also be read in at this step. In step S98, a new radius R′ iscomputed based on the force reading made in step S96. The new radius R′represents the radius between the bend arc. In step S100, a new robotposition is computed based upon the bend path equation which is afunction of the angle, R′, the die width, and the sheet thickness. Instep S102, the robot is moved to the new position that has beencomputed, and in step S104, a determination is made as to whether thefinal angle of the workpiece has been reached. If not, the processreturns to step S88. If the final angle has been reached, the processproceeds directly from step S104 to S106, at which point the process hascompleted.

FIG. 17 is a flow chart of the operation of a speed control module whichmay be called upon by a robot task provided within asequencer/controller such as that illustrated in each of the above-notedrelated applications entitled “Method for Planning/Controlling RobotMotion” and “Intelligent System for Generating and Executing a SheetMetal Bending Plan.”

The illustrated speed control module may be run continuously within asequencer/controller, for controlling the acceleration and decelerationof a robot whenever the robot is moved in order to prevent slippage of aworkpiece being held by the robot's gripper. In the alternative, amechanism may be provided for switching on or off the speed controlmodule. In the particular embodiment illustrated in FIG. 17, the speedcontrol module is set to run continuously during control of the bendingapparatus by a sequencer/controller as disclosed in an above-notedrelated application, entitled “Intelligent System for Generating andExecuting a Sheet Metal Bending Plan.” In a first step S108, adetermination is made as to whether or not the robot is moving. If therobot is moving, the process proceeds to step S110. If the robot is notmoving, the process then returns and again makes a determination in StepS108 as to whether the robot is moving. In step S110, the processmonitors the force provided by shear force sensors provided in therobot's gripper. In the next step S112, a determination is made as towhether the monitored forces are greater than or equal to a thresholdvalue. If the monitored forces are greater than or equal to a thresholdvalue, the process proceeds to step S114, where the absolute value ofthe acceleration is decreased. If the monitored forces are less than thethreshold value, as determined in step S112, the process proceeds tostep S116, where a determination is made as to whether either the speedof the robot or the absolute value of the acceleration of the robot isat a maximum. If either value is at a maximum, the process returns tostep S108. If neither the speed nor the absolute value of theacceleration of the robot is at a maximum, the process proceeds fromstep S116 to step S118. It is noted that the speed or the accelerationof the robot may be defined in terms of the movement of the tool centerpoint (TCP) of the robot which corresponds to a point on the robot'sgripper, and thus generally corresponds to the position of the workpiecebeing held by the robot.

An additional or alternative way to reduce or prevent slippage of theworkpiece is to move the workpiece about its center of gravity. Thiswould require computing or otherwise determining the workpiece's iscenter of gravity and controlling movements of the robot gripper interms of moving about the center of gravity.

FIG. 18 is a flow chart of the operation of a module for performingactive damping of vibrations of a workpiece being moved by a robot.Operation of the module may be controlled by a sequencer/controller inaccordance with a plan produced by a bend sequence planner. The processperformed by the module may be run concurrently with another module forcontrolling the robot to move from one location to another, thusallowing the robot to move a workpiece from one point to another, whileat the same time reducing or eliminating the vibrations in the workpieceduring movement. In a first step S120, the part geometry parameters thatare needed are read in. In step S122, the output signals produced by theforce sensors in the robot gripper are read. Then, in step S124, adetermination is made as to whether the approximate frequency ofvibration of the workpiece can be determined from the force sensorreadings. If an approximation cannot made of the frequency of vibration,the process then proceeds to step S130, at which point a determinationis made as to whether there is any vibration. If not, the processproceeds to step S132 and exits. If there is vibration, as indicated bythe overall force magnitude produced by the force sensors, the processreturns to step S122, where the force sensors are again read. Theprocess proceeds from step S124 to step 126 if a frequency of vibrationcan be determined. Then, the frequency is determined in step S126. It isnoted that the frequency of vibration cannot be determined if only oneforce sensor reading has been made, i.e., if step 122 has only beenexecuted one time. Thus, the process needs to be returned to step 122for two, three or more force sensor readings before the frequency ofvibration of the workpiece can be approximated in step S126. Once thefrequency of vibration has been determined in step S126, the process isforwarded to step S128, where the robot is moved in a direction oppositeto the vibration, with the same frequency of the vibration and the samemagnitude of force for each vibration.

It might be desired to model the vibration-part dynamics to make surethat certain movements of the robot will actually decrease the vibrationinstead of increasing it, and in order to make certain timingmodifications in counteracting the vibrations.

FIG. 19 is a flow chart of a second embodiment module for activelydamping the vibration of a workpiece. In a first step S130, any partgeometry parameters that are needed are read in. In a second step S132,the force sensors in the gripper are read. Then, in step S134, adetermination is made as to whether there are any vibrations in thepart, If not, the process proceeds to step S136 and exits. If there arevibrations, the process proceeds from step S134 to step S138, where adetermination is made as to whether the approximate frequency ofvibration of the part can be determined from the force sensor readings.If not, the process returns to step S132. If the approximate frequencyof vibration can be determined, the process proceeds to step S140, wherethe frequency of vibration is determined. Then, in step S142, the robotis moved in a direction opposite to each vibration, with the samefrequency and magnitude for each vibration.

FIGS. 20A-20B comprise a flow chart of the operation of a contactcontrol/active compliance control module. Such a module may be providedin order to cause a part being held by the robot gripper to constantlycontact a particular desired obstacle, and/or to be slid along a surfaceof a desired obstacle while it is moving in a desired direction. Thecontrol process illustrated in FIGS. 20A-20B assumes that a guarded moveroutine has be successfully executed to bring the part in contact with adesired object. Once that has occurred, the contact control processillustrated in FIGS. 20A-20B will begin at step S144. In step S144, adetermination is made as to whether a desired move has been completed.If yes, the process proceeds to step S146, and exits. If the desiredmove has not been completed, the process proceeds to step S148, wherethe robot is moved by some increment in the desired direction. In stepS150 the force sensors in the robot gripper are read. The force sensorreadings should be within a certain range so that the workpiece is incontact with a desired object with a certain desired force of contactbetween the workpiece and the desired object. This is determined in stepS152, which determines if a force sensor value F_(s) is between thevalues F_(c)−E and F_(c)+E. If not, the process proceeds to set S154,where a determination is made as to whether the force sensor value isless than the desired contact force F_(c) plus the error factor (E). Ifso, the robot is moved by some increment in a direction to increase theactual contact force in step S156 and then returns to step S144. If theforce sensor value is not less than the desired contact force F_(c)+E,that means that the force must be too high. Then the process proceeds tostep S158, at which point, the robot is moved by some increment in adirection to decrease the actual contact force between the workpiece andthe desired object to be contacted, and then returns (via connector B)to step S144. Adjustments in the actual contact force and the desiredmove increment (which indicates the actual desired movement of theworkpiece in general without regard to the contact force), can both beexecuted at the same time.

FIG. 21 illustrates a second example/illustrated embodiment of a contactcontrol module. In a first step S160, a delta value is initialize to beequal to zero. Then, in step S162, a determination is made as to whethera desired move has been completed. If yes, the process proceeds to stepS164, and exits. If no determination is made in step S162, the processproceeds directly to step S166, at which point the robot is moved in adesired direction plus an adjustment value delta which is made for acontact force adjustment. Then, in step S168, the force sensors in thegripper are read. In step S170, a determination is made as to whether aforce sensor value is within a range of the desired contact force, i.e.,between minimum and maximum force values., the minimum force value beingF_(c)−E and the maximum force value being F_(c)+E. If it is determinedthat the force value is within the desired range, the process returns tostep S162. If it is not within desired range, the process proceeds tostep S172, where a determination is made as to whether F_(s) is lessthan F_(c)−E (i.e., the minimum force). If yes, the process proceeds tostep S174, where delta is incremented toward a contact direction, inorder to increase the contact force, and the process then returns tostep S162. If the force sensor value is not less than the minimum forcevalue, the process proceeds from step S172 to step S176, where the deltavalue is decremented in a contact direction to decrease the contactforce between the workpiece and the desired object to be contacted.

FIG. 22 is a flow chart of a process performed by a guarded move module,which is a module for intentionally bringing a workpiece into contactwith a desired obstacle, and then stopping movement of the workpieceonce it has contacted the desired object. In a first step S178, therobot is moved by a certain position increment toward a desireddirection, and then in step S180, a force sensor reading is made. Instep S182, a determination is made as to whether a force sensor value isgreater than or equal to a desired contact force. If not, the processreturns to step S178. If the force sensor value is greater than or equalto the desired contact force, the process proceeds from step S182 tostep S184, where a determination is made as to whether or not anadjustment is needed (because the workpiece has been moved too far,resulting in a contact force that is too big). If an adjustment isneeded, the process proceeds to step 186, where the position of theworkpiece is pulled back by a set increment (e.g., by 0.5 mm). Theprocess then proceeds to step S188, at which point the process exits theguarded move routine and begins a next step in the manufacturingprocess.

FIGS. 23A-23B comprise a flow chart of the operation of an impactdetection module which detects unplanned collisions between a workpiecebeing held by a robot and an undesired obstacle. In a first step S190, adetermination is made as to whether the robot is moving. If not, theimpact detection process returns to step S190. It is noted that theimpact detection module may be provided with a default mode so that itis constantly running whenever the robot is moving. In the alternative,it may be configured so that it can be turned ON or OFF in accordancewith an instruction by a bend sequence planner. The process proceedsfrom step S190 to step S192 when the robot is moving, at which point aforce sensor reading is performed. Then, in step S194, a determinationis made as to whether a force sensor value is greater than or equal to aminor impact threshold value. If the force sensor value is not greaterthan or equal to the minor impact threshold value, the process returnsto step S190. This means that no collision has occurred, and that therobot may continue its movement without change or modification. If,however, the force sensor value is greater than or equal to the minorimpact threshold value, it proceeds to step S196, at which point themotion of the robot is stopped.

The process then proceeds to step S198, at which point a furtherdetermination is made as to whether the force sensor value is greaterthan or equal to a major impact threshold value. This signifies a majorimpact between the workpiece and an undesired obstacle. Accordingly, theprocess proceeds directly from step S198 to step S200, and alerts thesequencer and planner of the system that a major collision has occurred.No further movement of the robot is made at that point. On the otherhand, if the force sensor value is not greater than or equal to themajor impact threshold value as determined in step S198, this means thatonly a minor impact has occurred. The process then proceeds to stepS202, at which point a determination is made as to whether the directionof the impact can be determined from the force sensor readings or fromother sensor values. If not, the process proceeds to step S204, wherethe motion/process planner is alerted of the error, and no further robotmotion is made until modifications or corrections can be made. If thedirection of the impact can be determined from the force sensor readingor from other sensor values, the process proceeds from step S202 (viaconnector A) to step S206. In step S206, the robot is incrementallymoved in the direction of the force readings (in a direction opposite tothe impact). Then, in step S208, the force sensors are read. In stepS210, a further determination is made as to whether a force sensor valueis approximately equal to 0 pounds. If not, the process returns to stepS206, where the robot is again incrementally moved in a directionopposite to the detected impact. If the force sensor reading isapproximately 0, as determined in step S210, the process proceeds tostep S212, at which point the process planner is notified of the motionmodifications that were made due to the detection of an impact. Then, atstep S214, geometric information and process information are obtained tomake adjustments in the move whenever that same move is to be performedby the robot in the future. Then, in step S216, the adjusted move isexecuted, and the process is returned (via connector B) to step S190.

3. Droop Sensing and Compensation Mechanisms and Processes

FIGS. 24A-24B illustrate a back-lit, vision-based droop sensor. Aworkpiece is shown before being loaded into a die space in FIG. 24A, andapproaching the die space in FIG. 24B. The vision-based droop sensingsystem is formed by a CCD camera 144 which detects images from adirection coming from a backlight 142, with its field of visionincluding die 19 and the area surrounding die 19. Accordingly, with theuse of the vision-based droop sensing mechanism shown in FIGS. 24A-24B,as workpiece 16 approaches the area surrounding the die space, CCDcamera 144 can detect the presence of workpiece 16 within the areasurrounding the die space and the droop offset of the leading edge ofthe workpiece.

FIG. 25 is a flow chart of a process for sensing and compensating fordrooping, utilizing the back-lit vision-based droop sensor illustratedin FIGS. 24A-24B. The process is started at step S218, and proceeds to afirst step S220, at which point the field of vision is memorized withoutthe part. Then, in step S222, the workpiece/part is moved into the fieldof vision of the CCD camera 144. In step S224, the difference betweentwo frames (with and without the part) is taken. In step S226, thelowest point of the part is determined from the image formed with CCDcamera 144. Then, in step S228, a droop offset value is computed. Instep S230, the robot is moved upward in a Z direction by the amount ofthe droop offset. The part is then loaded into the die space in stepS232, and the process ends as indicated in step S234.

A vision-based droop sensor may be provided without the use of abacklight 142 as illustrated in the embodiment shown in FIGS. 24A-24B.FIG. 26 is a flow chart illustrating the steps of a droop sensing andcompensating process which may be performed with a vision-based droopsensor that does not utilize a backlight. The process starts at stepS236 and proceeds to the first step S238, at which point the part ismoved into the field of vision of CCD camera 144. The location of thepart is then determined in step S240, utilizing information beingcontinuously input based upon frame subtraction, the frame subtractionbeing performed at a constant rate, e.g., 30 Hertz. The part locationinformation is then utilized in step S242 to compute a robot trajectorytoward the goal, within the limits of the die space where the workpieceis to be loaded. In step S244, a determination is made as to whether thepart is at the goal. If not, the process returns to step S240, where thepart location is again determined as the part is continuously beingmoved toward the die space. If it is determined at step S244 that thepart is at the goal, and is thus loaded into the die space, the processproceeds to step S246, and terminates.

FIGS. 27A-27C illustrate a compound break-beam sensor 150. In FIG. 27A,workpiece 16 is ready for loading into the die space. In FIG. 27Bworkpiece 16 is approaching the die space and has interrupted a scanninglight curtain. In FIG. 27C, workpiece 16 has been lowered so that itintercepts both a scanning light curtain and a fixed horizontalbreak-beam. The illustrated compound break-beam droop sensor 150includes a scanning light curtain mechanism 152 for scanning a lightbeam along a plane that runs across the front of the die space. Scanninglight curtain mechanism 152 includes a scanned light beamsource/detector 154, and a reflective strip 156. So that the scannedlight beam produced by scanned light beam source/detector 154 will bereflected back to the same point, reflector strip 156 may be curved, orit may have a plurality of directional reflective elements that directthe scanned light beam back to the same point. Scanned light beamsource/detector 154 may comprise, e.g., a scanning mirror (not shown)for reflecting a source light beam toward reflective strip 156, and forreflecting a return light beam back toward a light beam detectormechanism (not shown). Compound break-beam droop sensor 150 furtherincludes a fixed single (traversing) break-beam mechanism 158 that formsa break beam which traverses a lower portion of a plane that covers thefront of the die space. The illustrated fixed single break-beammechanism 158 includes a light source 160 and a light detector 162.

FIG. 28 is a flow chart illustrating a process of performing droopsensing and compensation utilizing the compound break-beam sensor 150 ofFIGS. 27A-27C. In a first step S248, the process is started, andproceeds to step S250, at which point the part is moved toward the diespace. Then, in step S252, a determination is made as to whether thescanning light beam curtain has been broken. If not, the process returnsto step S250. If the scanning light curtain has been broken, the processproceeds to step S254, at which point movement of the part is stopped.By stopping the movement of the part, the Y position of the part withrespect to the die space is then known. The position of the partcorresponding to steps S252 and S254 is shown in FIG. 27B. Then, in stepS256, the part is moved down in the Z direction only. A determination isthen made in step S258 as to whether the horizontal fixed beam has beenbroken. If the horizontal fixed beam has not been broken, the processreturns to step S256. If the horizontal beam has been broken, theprocess proceeds from step S258 to step S260, where the droop value,i.e., the droop offset value, is saved. The droop offset value isdetermined based upon the amount in the Z axis by which the part had tobe moved until it broke the fixed horizontal beam produced by the singlefixed break-beam mechanism 158. FIG. 27C illustrates the position of theworkpiece as it breaks the horizontal fixed beam. In step S262, the partis then moved upward in the Z direction so that it will clear the diewhen being loaded into the die space. In step S264, the part is thenloaded into the die space, and the process of performing droop sensingis terminated at step S266.

FIGS. 29A-29B illustrate a single-beam droop sensor mechanism 158, whichincludes a light source 160 and a light detector 162. The light source160 and light detector 162 are each placed at a position in front of die19 so that the light beam produced thereby extends from one end toanother of a plane that covers the entrance portion of the die space.Thus, they can be used to detect a Z position of the workpiece and theamount of droop of the workpiece before loading the workpiece into thedie space.

FIG. 30 is a flow chart of a process for performing droop sensing andcompensation utilizing a droop sensor such as that illustrated in FIGS.29A-29B. The process in FIG. 30 is started at step S268, and proceeds toa first step S270. In step S270, a model is used to estimate the partdroop. In step S272, the leading edge of the part is moved over to thebreak beam, using the estimated droop in order to decrease the amount oftime needed to get the workpiece to a location which will cause thebreak-beam to be broken. Then in step S274, the part is lowered in the Zdirection. A determination is then made in step S276 as to whether thebeam has been broken. If the beam has not yet been broken, the processreturns to step S274. If the beam has been broken, the process proceedsfrom step S276 to step S278, at which point the droop offset is computedbased upon the position where the beam broke, and the initial positionof the workpiece. That is, the droop offset is computed based upon theamount of movement in the Z direction by which the workpiece had to bemoved before the beam broke. In step S280, the robot is moved upward inthe Z direction by the computed droop offset amount. The part is thenloaded into the die space in step S282, and the process is terminated instep S284.

4. Angle Sensing and Springback Control

An angle sensing mechanism which can be utilized in a bending apparatusenvironment is illustrated in FIGS. 31-33. The angle sensor may beutilized in connection with a springback control method for controllingthe amount of bending of a flange portion of a workpiece so that theresulting angle of the workpiece after the bend is performed is at adesired value, taking into account an expected amount of springback thatwill occur once the part is released from an engaged press brake. FIG.31 shows a side view of a die 19 and a mirror holding mechanism 170.Mirror holding mechanism 170 holds a mirror 176 having a reflectivesurface parallel to a flange portion 178 (FIG. 32) of a workpiece 16(see FIG. 32). Mirror holding mechanism 170 includes an arm 180 whichcarries a mirror mounting mechanism 182. Mirror mounting mechanism 182includes a mount plate 183, at least two sheet contact pads (e.g., fourevenly spaced contact pads) 184, and one or more springs (e.g., 3springs) 186 connecting the mirror mounting plate 183 to an end portionof arm 180.

Arm 180 is supported by a support member 188, via a pivot mechanism 190.An air cylinder 192 is provided, mounted to support member 188, whichincludes an actuation shaft 193. Actuation shaft 193 pushes against abottom portion of arm 180 to force arm 180 into an angle-measuringposition at which the mirror is placed at a location parallel to theunder-surface of the flange portion 178 of the workpiece, by bringingcontact pads 184 of mirror mounting mechanism 182 in contact with thelower surface of the flange portion 178 (FIG. 32) of the workpiece 16.In order to retract the mirror mechanism away from the part, actuationshaft 193 is retracted into air cylinder 192, and the top portion of arm80 will then rotate downward due to the weight of the top portion of arm180 along with the weight of mirror mounting mechanism 182. This allowsworkpiece 16 to be unloaded from the die space once the bend has beenperformed, without interfering or colliding with the mirror holdingmechanism 170.

Support member 188 is secured in an appropriate manner, e.g., bymounting bolts, into die rail 22. A mechanism may be provided for movingthe mirror holding mechanism 170 along the die rail to variouslocations, so that angle measurements may be made at different positionsalong the die rail and at different stages located on the die rail. Sucha movement mechanism may be an automated, motorized movement mechanism,or may just simply be a releasable attachment mechanism which may beprovided so that the mirror holding mechanism 170 can easily be detachedand reattached to the die rail at different locations along the dierail.

Pivot mechanism 190 may be implemented with an appropriate bearingmechanism or pin, and should allow arm 180 to freely move about thepivot point, and to be firmly brought into contact with the undersurface of flange portion 178 of the workpiece 16 when actuation shaft193 is pushed outward.

FIG. 32 is a side view of a die 19 and a beam emitter/detector unit 174which, together with mirror 176, form an angle sensor 172.Emitter/detector unit 174 includes an emitter 196 and a detector 198.Emitter 196 emits a beam toward a reflective surface 177 of mirror 176,and the emitted beam is reflected off reflective surface 177 back towarddetector 198. An angle measurement is made by determining the positionof the light beam as detected by detector 198. The emitter may comprisea VLM 2-5 laser provided by Applied Laser Systems, Grants Pass, Oreg.Emitter 198 may comprise a sensor such as a model SL15 linear photodiodeprovided by UDT Sensors, Inc. of Hawthorne, Calif. The detector mayinclude a neutral density filter which is placed over the linearphotodiode and which is a G30,891 neutral density filter provided byEdmunds Scientific, Barrington, N.J. The neutral density filter isprovided to reduce the intensity of light so that the sensor canappropriately interpret the light beam and its position.

In accordance with a particular embodiment of the present invention, theangle between the light beam incident on mirror 176 and the light beamreflected from mirror 176 may be 6°. FIG. 33 shows a side view of a beamemitter/detector unit 174 with a support structure 200 for holding beamemitter/detector unit 174. The elements of the beam emitter/detectorunit 174 that are visible in FIG. 33 include detector 198 along withneutral density filter 197. Support structure 200 may be provided withangled surfaces 201 for holding the emitter/detector unit 174 at anappropriate angle so that it may direct and receive the incident andreflected light beams to and from mirror 176 at an appropriate heightand angle. In the illustrated embodiment, which is intended formeasuring a range of angles close to 45° of a flange portion 178 (whichequates to bend angles near 90°), the angled surfaces 201 areapproximately 45° from the horizontal plane.

FIG. 34 is a top view of beam emitter/detector unit 174. In the viewshown in FIG. 34, each of the detector 198 and emitter 196 is visible,along with neutral density filter 197, and a light emitter exit window199. The housing, which holds detector 198, in the illustratedembodiment, may be adjusted in an up and down manner in accordance withthe arrows A shown in FIG. 34, in order to adjust the vertical positionof the reflecting light beam 201 with respect to detector 198 (whichcomprises a linear photo diode sensor). The lateral position of emitter196 may be adjusted as indicated by arrows B. This allows the lateralposition of the emitted/incident light beam to be adjusted, so that itis incident on mirror 176, and is reflected toward a center receivingposition of detector 198.

Emitter/detector unit 174 may also be provided with a mounting mechanismso that it may be automatically moved from one position to another alongthe die rail, or may be manually moved by detaching and reattaching thesame along various positions of the die rail.

In accordance with the illustrated embodiment, the distance between theemitter/detector unit 174 and mirror 176 may be approximately 4 inches.

When digitally sampling a continuously changing analog signal that isrepresentative of the bend angle, the system may digitally filter thesignal with a digital butterworth low pass filter having a frequencythat will sufficiently cut off unwanted high frequency noise componentsof the signal. It is important that the mirror be close to the dieradius for all die widths. In this regard, an adjustment mechanism maybe provided for adjusting the position of the mirror with respect to thedie radius in order to bring the mirror closer thereto. Another featurethat may be provided in the angle sensor illustrated is an adjustmentmechanism for adjusting the angle sensor to be able to read a bigger ordifferent range of angles.

In order to improve repeatability, multiple angle readings should betaken, on the order of 100 to 1000 readings, in a very short period oftime, and the results averaged. In this way, a more accurate anglereading can be maintained. It is noted that the range of the sensorillustrated is only 4° (i.e, the sensor can only sense a varying angleof a workpiece flange portion varying by 4°). A larger sensor, an arrayof sensors, or an adjustable position system can be utilized to addressthis shortcoming by increasing the overall bending range measurable bythe angle sensor. The system may be provided with a motorized screw-typedrive mechanism for positioning the sensor and the mirror holdingmechanism along any one of unlimited positions along the die rail, foradded flexibility. In addition, or in the alternative, a plurality ofangle sensors may be provided at several points along the bend line, fora given workpiece being bent.

FIG. 35 is a flow chart of a springback control process utilizing thebend angle sensor 172 illustrated in FIG. 32. In a first step S286 ofthe springback control process, the angle of the flange portion 178 ofworkpiece 16 is read from a filtered continuous angle measurement signalproduced by the bend angle sensor described. Then, in step S288, adetermination is made as to whether the measured angle is greater thanor equal to an initial threshold value θ1 (Theta 1). If it not greaterthan or equal to θ1, the process returns to step S286. If the angle isgreater than or equal to θ1, the process proceeds to step S290, where aslope is calculated of the continuously measured angle values to themonitored changing positions of the die along a D axis. In addition, instep S290, a springback is calculated and an additional threshold anglevalue θD (Theta D) is calculated. Then, in step S292, a determination ismade as to whether the calculated θD is equal to the last calculated θD.If not, the process returns to step S286. If, however, the calculated θDis equal to the last calculated θD, the process proceeds to step S294,where the die movement is stopped at θD. θD is calculated as a functionof the calculated springback and the desired target angle of theworkpiece, and is slightly beyond the desired target angle (of bending)of the workpiece, so that when the workpiece springs back afterdisengagement of the press brake, it will be end up at its desiredangle.

In order to perform the calculation of springback in step S290, aspringback model may be utilized. The springback model may be developedby performing several steps including performing experiments on a batchof samples of sheet metal, and performing several initial calculations.In developing the springback model, a batch of samples of sheet metal(e.g. cold-rolled steel sheets) may be acquired, having varyingthicknesses and hardnesses. The hardness (Brinell hardness number) andthe thickness (inches) may then be measured for each sampled sheet.Parts are then pressed utilizing the samples to a target angle (e.g.,90°). As each part is pressed, the angle (utilizing the angle sensor) isrecorded versus the die displacement (as indicated by a glass scaleencoder). The angle is recorded as it goes from about 87/88° to 90°,taking data points which may include between 100 to 1000 data points, asthe angle varies from within this range. Then, the part is unloaded fromthe bend press, and the unloaded bend angle (which is the angle of thepart after being unloaded) is measured and recorded. For each samplesheet, several variables are calculated, including the hardness dividedby thickness (t), K_(PL)=1/((0.5)t+punch radius), hardness/(t(K_(PL)))and 1/slope of angle versus die displacement. The springback of eachtested/sample sheet is then calculated to be equal to the loadedangle—unloaded angle. Once this information has been acquired, a linearregression analysis or back propagation analysis (utilizing a neuralnetwork) may be utilized to model the springback as a function of eachof the above-noted variables.

As an example of a linear regression model, the following variables andcoefficients may be utilized, which were determined by analyzing 100sheets of cold-rolled steel (similar to the ASTM 366 standard) havingvarying thicknesses and hardnesses.

Variable Co-Efficient Constant 0.51918 K_(PL) 0.07078 H/T 0.002071/slope 415.35603 H/(T(K_(PL))) −0.02405

The springback (sb) for a particular sheet may be calculated as0.51918+0.07078 (K_(PL))+0.00207(H/T)+415.35603(1/slope)+(−0.02405)(H/TK_(PL))).

Data Acquisition

A number of cold-rolled steel sheets, from a variety of vendors, may beutilized in order to gather samples of different thickness and hardness,as well as strain hardening properties. Each sample may then be shearedto the same width and the thickness and hardness of each sheet measured.Each part may then be bent to approximately the same loaded angle of thepress brake, with the final angle being recorded. A history of theloaded angle versus die displacement may then be recorded. Each sheetmay then be unloaded and the angle of the part measured on a coordinatemeasuring machine.

TAGUCHI Analysis

An analysis may be conducted utilizing Taguchi's orthogonal arraymethodology. A two-factor, four-level per factor array turns out to bewell suited to the acquired data noted above.

Linear Regression Analysis

Linear regression analysis provides a tool to correlate springback witha variety of possible variables based on measurements of thickness,hardness and die displacement during the loading of the workpiece. Thevariables that ultimately result in the best fit correspond to ratiossuggested by the analytical model. Those variables include:Hardness/Thickness; Curvature beneath the punch (K_(PL)=1/0.5(thickness)+punch radius); and Hardness/(Thickness(K_(PL))) In addition,the slope of the die displacement versus loaded angle curve turns out tobe approximately linearly related to springback. Thus, four terms areused in the linear regression analysis of springback. This relationprovides a fit of R²=0.959 and a standard deviation of 0.15 degrees. Arange of residuals for 226 data points is +/−0.36 degrees.

Neural Network Analysis

As an alternative to linear regression, a neural network of modelspringback may be developed. The network may consist of the four inputsused in the regression analysis, six hidden units, and one output unit,springback. The layers may be fully connected, and the weights trainedusing the back propagation algorithm.

While the invention has been described with reference to severalillustrative embodiments, it is understood that the words which havebeen used herein are words of description, rather than words oflimitation. Changes may be made, within the purview of the appendedclaims, without departing from the scope and spirit of the invention inits aspects. Although the invention has been described herein inreference to particular means, materials, and embodiments, it isunderstood that the invention is not to be limited to the particularsdisclosed herein, and that the invention extends to all equivalentstructures, methods, and uses such as are within the scope of theappended claims.

What is claimed:
 1. Apparatus for controlling a rate of change ofvelocity of a robot gripper holding a workpiece, said apparatuscomprising: monitoring means for monitoring a force between saidworkpiece and said robot gripper; determining means for determining ifthe monitored force is greater than or equal to a threshold value; anddecreasing means for decreasing the rate of change of the velocity ofsaid workpiece by lowering the acceleration of said robot gripper whenthe monitored force is determined to be greater than or equal to saidthreshold value.
 2. Apparatus for actively damping vibration of aworkpiece being held by a robot gripper during movement of saidworkpiece by a robot, said apparatus comprising: part geometry parameterreading means for reading part geometry parameters related to theworkpiece being held by said robot gripper; force reading means forreading an amount of force between said workpiece and said robotgripper; frequency determining means for determining an approximatefrequency of vibration of said workpiece based upon the force readingsmade by said force reading means; and robot movement control means forcontrolling said robot to move said robot gripper in a directionopposite to the force readings with the frequency determined by saidfrequency determining means.
 3. Apparatus for controlling a robot havinga robot gripper holding a workpiece, so that said workpiece is movedwhile maintaining contact between said workpiece and a desired object,said apparatus comprising: robot control means for controlling movementof said robot so that said workpiece moves in a desired direction;monitoring means for monitoring a force between said workpiece and saidrobot gripper; determining means for determining if the monitored forceis within a certain range of a desired contact force between saidworkpiece and said desired object; and adjusting means for adjusting thedirection of movement of said workpiece to either increase or decreasethe contact force, as indicated by the monitored force between saidworkpiece and said robot gripper, in order to bring the monitored forcewithin the certain range of the desired contact force.
 4. Apparatus forcontrolling movement of a workpiece held by a robot gripper toward anobstacle until said workpiece contacts said obstacle, said apparatuscomprising: robot control means for controlling movement of saidworkpiece by a predetermined increment toward said obstacle; forcemonitoring means for monitoring an amount of force between saidworkpiece and said robot gripper; determining means for determining ifthe monitored force is greater than or equal to a threshold value; andrepeating means for repeating movement of said workpiece toward saidobstacle until it is determined that the monitored force is greater thanor equal to the threshold value.
 5. Apparatus for controlling movementof a workpiece held by a robot gripper, and for detecting an unplannedimpact between said workpiece and an obstacle, said apparatuscomprising: monitoring means for monitoring an amount of force betweensaid workpiece and said robot gripper; determining means for determiningif the monitored force is greater than or equal to an impact thresholdvalue; and stopping means for stopping movement of the robot when themonitored force is determined to be greater than or equal to said impactthreshold value.
 6. The apparatus according to claim 5, wherein saiddetermining means comprises means for determining if the monitored forceis greater than or equal to a minor impact threshold value, and fordetermining if the monitored force is greater than or equal to a majorimpact threshold value; said apparatus further comprising means formodifying movement of said robot in order to move said workpiece awayfrom said obstacle when the monitored force is determined to be greaterthan or equal to said minor impact threshold value but less than saidmajor impact threshold value.
 7. A system for loading a workpiece into adie space of a bending apparatus, said system comprising: measuringmeans for measuring an amount of droop offset of a leading edge of saidworkpiece before said workpiece is loaded into said die space; means formoving said workpiece in an upward direction by the measured droopoffset; and loading means for loading said workpiece into said diespace.
 8. The apparatus according to claim 7, wherein said measuringmeans comprises a back-lit vision-based droop sensor.
 9. The apparatusaccording to claim 7, wherein said measuring means comprises avision-based droop sensor.
 10. The apparatus according to claim 7,wherein said measuring means comprises a mechanism for sensing when eachof a plurality of light beams have been intersected by said workpiece assaid workpiece is moved toward said die space.
 11. The apparatusaccording to claim 7, wherein said measuring means comprises a singlebreak-beam detecting mechanism for detecting when a single light beamhas been broken by movement of said workpiece toward said die space. 12.An angle sensor for detecting an angle of a flange portion of aworkpiece as the flange portion is being bent by a bending apparatus,said angle sensor comprising: a member having a reflective surface;holding means for holding said member with said reflective surfaceagainst said flange portion of said workpiece; light emitting means foremitting a light beam onto said reflective surface; and light detectingmeans for detecting a position of said light beam as said light beam isreflected by said reflective surface, the detected position beingindicative of the angle of said flange portion of said workpiece.
 13. Asystem for controlling springback of a bent flange portion of aworkpiece as a bend operation is performed by a bending apparatusutilizing a die and a tool punch, said springback control systemcomprising: angle measurement means for measuring an angle of saidflange portion of said workpiece as a bend is being performed; andspringback calculating means for calculating a predicted amount ofspringback expected to occur in said flange portion of said workpieceafter completion of the bend operation.